Hardware/Software Co-Assurance using the Rust Programming Language and ACL2
نویسندگان
چکیده
The Rust programming language has garnered significant interest and use as a modern, type-safe, memory-safe, potentially formally analyzable language. Our in stems from its potential hardware/software co-assurance language, with application to critical systems such autonomous vehicles. We report on the first known of High-Level Synthesis (HLS) Most incumbent HLS languages are subset C. A Rust-based brings single memory-safe expression for both hardware software realizations high assurance. As study suitability an HLS, we have crafted subset, inspired by Russinoff's Restricted Algorithmic C (RAC), which imaginatively named Rust, or RAR. In our implementation RAR toolchain, simply transpile source into RAC. By so doing, leverage number existing tools minimum investment time effort. this paper, describe detail prototype verification several representative algorithms data structures written RAR, proofs correctness conducted using ACL2 theorem prover.
منابع مشابه
the relationship between using language learning strategies, learners’ optimism, educational status, duration of learning and demotivation
with the growth of more humanistic approaches towards teaching foreign languages, more emphasis has been put on learners’ feelings, emotions and individual differences. one of the issues in teaching and learning english as a foreign language is demotivation. the purpose of this study was to investigate the relationship between the components of language learning strategies, optimism, duration o...
15 صفحه اولPatina: A Formalization of the Rust Programming Language
Rust is a new systems language that uses some advanced type system features, specifically affine types and regions, to statically guarantee memory safety and eliminate the need for a garbage collector. While each individual addition to the type system is well understood in isolation and are known to be sound, the combined system is not known to be sound. Furthermore, Rust uses a novel checking ...
متن کاملWhat can the programming language Rust do for astrophysics?
The astrophysics community uses different tools for computational tasks such as complex systems simulations, radiative transfer calculations or big data. Programming languages like Fortran, C or C++ are commonly present in these tools and, generally, the language choice was made based on the need for performance. However, this comes at a cost: safety. For instance, a common source of error is t...
متن کاملProgramming language techniques for high-assurance cryptography
Gilles Barthe (2017), “Programming language techniques for high-assurance cryptography”, : Vol. xx, No. xx, pp 1–1. DOI: 10.1561/XXXXXXXXX.
متن کاملUtilizing Rust Programming Language for EFI-Based Bootloader Design
Rust, as being a systems programming language, offers memory safety with zero cost and without any runtime penalty unlike other languages like C, C++ or Cyclone. System programming languages are mainly used for low level tasks such as design of operating system components, web browsers, game engines and time critical missions like signal processing. Main disadvantages of the existing systems la...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Electronic proceedings in theoretical computer science
سال: 2022
ISSN: ['2075-2180']
DOI: https://doi.org/10.4204/eptcs.359.16